// 谁出书最多

#include <iostream>
using namespace std;

int    a[1000]; // 图书的编号
string b[1000]; // 图书的作者列表
int    c[26];   // 每一名作者的出书总数

int main()
{
    int m;
    cin >> m; // 图书总数m
    
    char au = 'A'; // 出书最多的人
    int max = 0;  // 出书最多的总数
    for(int i=0; i<m; i++)
    {
        cin >> a[i];
        cin >> b[i];
        
        // 将本书的作者列表中的每一个人的出书总数都加1
        for(int j=0; j<b[i].length(); j++)
        {
            c[b[i][j]-'A']++;
            
            // 如果某个作者出书数量超过max,那么这个作者就重新成为冠军
            // 如果某个作者出书数量等于max且名字序号小于原冠军，那么这个作者就会成为新的冠军
            if(c[b[i][j]-'A'] > max ||
              (c[b[i][j]-'A'] == max && b[i][j]<au))
            {
                max = c[b[i][j]-'A'];
                au  = b[i][j];
            }
        }
    }
    
    cout << au << endl;
    cout << max << endl;
    
    // 输出冠军作者的所有图书
    for(int i=0; i<m; i++)
    {
        if(b[i].find(au) != string::npos)
        	cout << a[i] << endl;
    }
    
	return 0;
}